package com.xdtech.cc.model;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.Table;

import com.xdtech.core.model.BaseModel;

/**
 * 
 * @author max.zheng
 * @create 2016-05-29 21:53:30
 * @since 1.0
 * @see 
 */
@Entity
@Table(name="CC_ACCOUNT")
public class Account extends BaseModel implements Serializable{
	private static final long serialVersionUID = 1L;
	@Id
	@Column(name = "ID")
	@GeneratedValue(strategy = GenerationType.AUTO)
	private Long id;
	@Column(name="ACCOUNT_NAME")
	private String accountName;
	@Column(name="BLANK_TYPE")
	private String blankType;
	@Column(name="CREDIT_LIMIT")
	private Double creditLimit;
	@Column(name="REPAYMENT_AMOUNT")
	private Double repaymentAmount;
	@Column(name="BILL_AMOUNT")
	private Double billAmount;
	@Column(name="CUSTOMER_PRINCIPAL")
	private Double customerPrincipal;
	@Column(name="BILL_DAY")
	private String billDay;
	@Column(name="REPAYMENT_DAY")
	private String repaymentDay;
	@Column(name="TRADE_PWD")
	private String tradePwd;
	@Column(name="QUERY_PWD")
	private String queryPwd;
//	@Column(name="HANDLING_FEE_POINT")
//	private Double handlingFeePoint;
//	@Column(name="CHARGE_DATE")
//	private String chargeDate;
//	@Column(name="MERCHANT_NAME")
//	private String merchantName;
//	@Column(name="MERCHANT_FEE")
//	private Double merchantFee;
//	@Column(name="PAY_CARD_COUNT")
//	private Integer payCardCount;
//	@Column(name="HANDLING_FEE")
//	private Double handlingFee;
//	@Column(name="PAY_CARD_MONEY")
//	private Double payCardAmount;
//	@Column(name="ARRIVAL_AMOUNT")
//	private Double arrivalAmount;
//	@Column(name="PAY_CARD_TIME")
//	private String payCardTime;
//	@Column(name="ARRIVAL_AMOUNT_TIME")
//	private String arrivalAmountTime;
//	@Column(name="ARRIVAL_AMOUNT_CARD")
//	private String arrivalAmountCard;

	//一对多
	@OneToMany(fetch=FetchType.LAZY,mappedBy="account")
	List<TradeRecord> tradeRecords = new ArrayList<TradeRecord>();

	public void setId(Long id) {
		this.id = id;
	}
	public Long getId() {
		return id;
	}
	public void setAccountName(String accountName) {
		this.accountName = accountName;
	}
	public String getAccountName() {
		return accountName;
	}
	public void setBlankType(String blankType) {
		this.blankType = blankType;
	}
	public String getBlankType() {
		return blankType;
	}
	public void setCreditLimit(Double creditLimit) {
		this.creditLimit = creditLimit;
	}
	public Double getCreditLimit() {
		return creditLimit;
	}
	public void setRepaymentAmount(Double repaymentAmount) {
		this.repaymentAmount = repaymentAmount;
	}
	public Double getRepaymentAmount() {
		return repaymentAmount;
	}
	public void setBillAmount(Double billAmount) {
		this.billAmount = billAmount;
	}
	public Double getBillAmount() {
		return billAmount;
	}
	public void setCustomerPrincipal(Double customerPrincipal) {
		this.customerPrincipal = customerPrincipal;
	}
	public Double getCustomerPrincipal() {
		return customerPrincipal;
	}
	public void setBillDay(String billDay) {
		this.billDay = billDay;
	}
	public String getBillDay() {
		return billDay;
	}
	public void setRepaymentDay(String repaymentDay) {
		this.repaymentDay = repaymentDay;
	}
	public String getRepaymentDay() {
		return repaymentDay;
	}
	public void setTradePwd(String tradePwd) {
		this.tradePwd = tradePwd;
	}
	public String getTradePwd() {
		return tradePwd;
	}
	public void setQueryPwd(String queryPwd) {
		this.queryPwd = queryPwd;
	}
	public String getQueryPwd() {
		return queryPwd;
	}
//	public void setHandlingFeePoint(Double handlingFeePoint) {
//		this.handlingFeePoint = handlingFeePoint;
//	}
//	public Double getHandlingFeePoint() {
//		return handlingFeePoint;
//	}
//	public void setChargeDate(String chargeDate) {
//		this.chargeDate = chargeDate;
//	}
//	public String getChargeDate() {
//		return chargeDate;
//	}
//	public void setMerchantName(String merchantName) {
//		this.merchantName = merchantName;
//	}
//	public String getMerchantName() {
//		return merchantName;
//	}
//	public void setMerchantFee(Double merchantFee) {
//		this.merchantFee = merchantFee;
//	}
//	public Double getMerchantFee() {
//		return merchantFee;
//	}
//	public void setPayCardCount(Integer payCardCount) {
//		this.payCardCount = payCardCount;
//	}
//	public Integer getPayCardCount() {
//		return payCardCount;
//	}
//	public void setHandlingFee(Double handlingFee) {
//		this.handlingFee = handlingFee;
//	}
//	public Double getHandlingFee() {
//		return handlingFee;
//	}
//	public void setPayCardAmount(Double payCardAmount) {
//		this.payCardAmount = payCardAmount;
//	}
//	public Double getPayCardAmount() {
//		return payCardAmount;
//	}
//	public void setArrivalAmount(Double arrivalAmount) {
//		this.arrivalAmount = arrivalAmount;
//	}
//	public Double getArrivalAmount() {
//		return arrivalAmount;
//	}
//	public void setPayCardTime(String payCardTime) {
//		this.payCardTime = payCardTime;
//	}
//	public String getPayCardTime() {
//		return payCardTime;
//	}
//	public void setArrivalAmountTime(String arrivalAmountTime) {
//		this.arrivalAmountTime = arrivalAmountTime;
//	}
//	public String getArrivalAmountTime() {
//		return arrivalAmountTime;
//	}
//	public void setArrivalAmountCard(String arrivalAmountCard) {
//		this.arrivalAmountCard = arrivalAmountCard;
//	}
//	public String getArrivalAmountCard() {
//		return arrivalAmountCard;
//	}

	public List<TradeRecord> getTradeRecords()
	{
		return tradeRecords;
	}

	public void setTradeRecords(List<TradeRecord> TradeRecords)
	{
		this.tradeRecords = tradeRecords;
	}
}
